package algorithms.sort;

import algorithms.sort.n2.BubbleSort;
import algorithms.sort.n2.InsertionSort;
import algorithms.sort.n2.SelectionSort;
import algorithms.sort.nlogn.MergeSort;
import algorithms.sort.nlogn.QuickSort;
import algorithms.sort.nlogn.ShellSort;

public class RunDemo {
    public static void main(String[] args) {
        int [] arr = {50, 11, 70, 33, 88, 81, 17, 95, 73, 4, 31, 29, 49, 80, 23, 52, 42, 28, 16, 98, 34, 74, 51, 85, 10, 25, 71, 1, 47, 89, 75, 5, 45, 68, 65, 92, 77, 24, 46, 61, 94, 79, 6, 3, 35, 87, 18, 99, 21, 54, 59, 97, 55, 14, 36, 26, 19, 90, 63, 66, 15, 84, 82, 9, 43, 12, 7, 58, 22, 67, 86, 64, 13, 38, 39, 60, 57, 91, 30, 69, 41, 2, 8, 56, 37, 32, 93, 83, 76, 72, 48, 96, 62, 40, 78, 27, 20, 44, 53};
//        SortingVisualization sortingVisualization = new BubbleSort(arr);
//        SortingVisualization sortingVisualization = new InsertionSort(arr);
//        SortingVisualization sortingVisualization = new SelectionSort(arr);
//        SortingVisualization sortingVisualization = new MergeSort(arr);
        SortingVisualization sortingVisualization = new QuickSort(arr);
//        SortingVisualization sortingVisualization = new ShellSort(arr);
        sortingVisualization.showSortingProcess();
    }
}
